package br.com.datatraffic.fiscal.entidades;

// Generated 10/07/2009 10:49:54 by Hibernate Tools 3.2.0.b9

import java.util.ArrayList;
import java.util.List;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;

/**
 * Equipamento generated by hbm2java
 */
@Entity
@Table(name = "TBEQUIPAMENTO")
public class Equipamento5 implements java.io.Serializable {

	private Long id;
	private TipoEquipamento5 tipoEquipamento;
	private String nome;
	private String equipamentoCodigo;
	private List<EquipamentoServico> equipamentoServicos = new ArrayList<EquipamentoServico>(0);
	private List<MensagemAdHoc> mensagemAdHocs = new ArrayList<MensagemAdHoc>(0);
	private List<EquipamentoFaixa5> equipamentoFaixas = new ArrayList<EquipamentoFaixa5>(0);

	public Equipamento5() {
	}

	public Equipamento5(Long id, TipoEquipamento5 tipoEquipamento) {
		this.id = id;
		this.tipoEquipamento = tipoEquipamento;
	}

	public Equipamento5(Long id, TipoEquipamento5 tipoEquipamento, String nome, String equipamentoCodigo,
			List<EquipamentoServico> equipamentoServicos, List<MensagemAdHoc> mensagemAdHocs,
			List<EquipamentoFaixa5> equipamentoFaixas) {
		this.id = id;
		this.tipoEquipamento = tipoEquipamento;
		this.nome = nome;
		this.equipamentoCodigo = equipamentoCodigo;
		this.equipamentoServicos = equipamentoServicos;
		this.mensagemAdHocs = mensagemAdHocs;
		this.equipamentoFaixas = equipamentoFaixas;
	}

	@Id
	@GeneratedValue
	@Column(name = "EQUIPAMENTO_ID", unique = true, nullable = false, precision = 38, scale = 0)
	public Long getId() {
		return this.id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "TIPO_EQUIPAMENTO_ID", nullable = false)
	public TipoEquipamento5 getTipoEquipamento() {
		return this.tipoEquipamento;
	}

	public void setTipoEquipamento(TipoEquipamento5 tipoEquipamento) {
		this.tipoEquipamento = tipoEquipamento;
	}

	@Column(name = "NOME", length = 50)
	public String getNome() {
		return this.nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	@Column(name = "EQUIPAMENTO_CODIGO", length = 50)
	public String getEquipamentoCodigo() {
		return this.equipamentoCodigo;
	}

	public void setEquipamentoCodigo(String equipamentoCodigo) {
		this.equipamentoCodigo = equipamentoCodigo;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "equipamento")
	public List<EquipamentoServico> getEquipamentoServicos() {
		return this.equipamentoServicos;
	}

	public void setEquipamentoServicos(List<EquipamentoServico> equipamentoServicos) {
		this.equipamentoServicos = equipamentoServicos;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "equipamento")
	public List<MensagemAdHoc> getMensagemAdHocs() {
		return this.mensagemAdHocs;
	}

	public void setMensagemAdHocs(List<MensagemAdHoc> mensagemAdHocs) {
		this.mensagemAdHocs = mensagemAdHocs;
	}

	@OneToMany(fetch = FetchType.LAZY, mappedBy = "equipamento")
	public List<EquipamentoFaixa5> getEquipamentoFaixas() {
		return this.equipamentoFaixas;
	}

	public void setEquipamentoFaixas(List<EquipamentoFaixa5> equipamentoFaixas) {
		this.equipamentoFaixas = equipamentoFaixas;
	}

	// The following is extra code specified in the hbm.xml files
	private static final long serialVersionUID = 1L;
	// end of extra code specified in the hbm.xml files

}
